Note: The graphics on this page date from 1997. In 2008 I made some closely related flash animations for visualizing complex functions.
This is a collection of graphical demonstrations of concepts in complex analysis which I developed for a course I gave on that subject during the spring semester of 1997. (For graphical demonstrations of calculus concepts see my page on Graphics for the calculus classroom.) Please send any feedback concerning this page .
The most common method of visualizing a complex map is to show the image under the map of a set of curves, e.g., a set of line segments of constant real and/or imaginary part (a Cartesian grid), or a set of concentric circles and spokes (a polar grid). A weakness of this approach is that it can be difficult or impossible to infer which points of the original curves are mapped to which points of the final images. The graphics on this page use two techniques to overcome this problem. First, most are animated so that the original curves are continuously deformed into the image curves, and the eye can follow which points move where. Second, I use colors to distinguish different points and curves.
Viewing instructions. To view the animations on this page your browser must be Java-enabled. When you select an animation, there is a delay as the frames load. Once the animation begins, you can change the speed by hitting the the period (faster) or comma (slower) key (in the graphics area). You can stop and start the animation by clicking the mouse, and once stopped, you can moved through the frames manually with the bracket keys "[" and "]". An alternate version of this page using animated GIFs is available as well. That version doesn't require that have a working Java set-up, and the animations generally load much faster, but it doesn't allow user control of the animation speed or frame advance. An older version of this page using the FLI animation format is also available, but no longer actively maintained, and so not recommended.
As a first example, consider the simple function . We shall examine how a square with corners at is transformed under this map. First we just look at the half of the square in the right half plane, which is shown in the first frame. This region mapped one-to-one onto the region contained between two parabolas, exhibited in final frame. The lines of constant real part are mapped onto parabolas opening along the negative real axis, and those with constant imaginary part to parabolas opening along the positive real axis. Note that these parabolas meet at right angles, a consequence of conformality (see below). The frames of the animation show the image of the half-square under a linear combination of the identity map and the squaring map: , with t increasing from 0 to 1. In other word, this is an animation of the linear homotopy taking the identity to the squaring map. Note that the intermediate maps are again quadratic in z and hence conformal at all but one point.
The next animation shows the deformation of the half of the square lying in the left half plane. This region is mapped one-to-one onto the same region and the right half of the square. Therefore the deformation of the entire square shows the square being folded over onto itself as it distorts, so as to cover the parabolically bounded region twice. If you pause the animation on the penultimate frame, the two-to-one character of the map is evident.
The squaring map behaves more simply when applied to a polar grid, since it takes circles of constant modulus to circles of constant modulus, and rays of constant argument to rays of constant argument. We animate the deformation of the disk of radius 2 centered at the origin and overlaid with a polar grid. The animations show the deformation of the half disk in the right half plane, the deformation of the half disk in the left half plane, and the deformation of the entire disk.
A better view of the same map comes when the disk is colored, here by a hue which varies with the argument (so the color is constant on each array emanating from the origin). An animation of the colored disk, displays clearly how the disk is folded over on itself to cover the image disk twice (again, pause a few frames from the end). The discontinuity in the coloring in the final frame reflect the impossibility of defining a continuous square root function on the disk. By looking at the last few frames, it is also possible to get a pretty clear idea of the Riemann surface for the squaring map (a surface which, when realized in 3 dimensional space, intersects itself along the negative real axis).
The same techniques of visualization apply to other complex maps. For example, the complex exponential maps the infinite open strip bounded by the horizontal lines through one-to-one onto the plane minus the negative real axis. The lines of constant real part are mapped to circles, and lines of constant imaginary part to rays from the origin. In the animation we view a rectangle in the strip rather than the entire strip, so the region covered is an annulus minus the negative real axis. The inner boundary of the annulus is so close to the origin as to be barely visible. We also make the strip a bit thinner than , so that the annulus does not quite close up.
The next animations show two-to-one coverings of a disk by the complex cosine and complex sine restricted to a rectangle of width and height 2 centered at the origin.
An important property of analytic functions is that they are conformal maps everywhere they are defined, except where the derivative vanishes. A conformal map is one that preserves angles. More precisely, if two curves meet at a point and their tangents make a certain angle there, then the angle between the images curves under any analytic function (with non-vanishing derivative) will be the same in both sense and magnitude. A consequence of conformality, namely the preservation of orthogonality of intersecting coordinate lines, was visible in all the animations above. Another nice example is given by the power map , which is conformal everywhere except at the origin. Here we apply the map to a square grid in the first quadrant, with the power a varying from 1 to 3.9. Notice how all the right angle intersections remain right angles throughout the deformation, except the angle made by the green lines meeting at the origin, where the power maps are not conformal.
My favorite demonstration of conformality is to view the deformation of four small squares under a cubic polynomial in the complex variable z (namely ). Notice that the squares deform only by dilating and rotating. This is another way to express conformity. By contrast, if we replace the quadratic term of the polynomial by its conjugate (so ), we get another cubic polynomial map, but this one is not analytic, and clearly not conformal. Note also, that conformality is a local property. If we think of the four small squares as the vertices of a larger square, that square is vastly deformed, not just dilated and rotated.
Möbius transformations are widely studied as useful examples of conformal maps. A key property is that they map circles in the Riemann sphere into circles in the Riemann sphere, or, equivalently, that the image of a line or circle in the plane is another line or circle. This animation shows the identity map (a Möbius transformation!) being deformed into a less trivial Möbius transformation. The homotopy is chosen so that all the intermediate steps are Möbius transformations as well. The animation shows the unit square deformed into a closed curve composed of four circular arcs. The inside of the square is mapped to the region outside of the curve, and a region about infinity is mapped to the interior of the curve. The specific family of Möbius transformations displayed is
According to the Riemann mapping theorem, there exists a conformal map from the unit disk to any simply connected planar region (except the whole plane). However, finding such a map for a specific region is generally difficult. An important special case where a formula is known is when the target region is polygonal. In that case we have the Schwarz-Christoffel formula, written as
Here the polygon has n vertices, the interior angles at the vertices are ,..., , in counterclockwise order, and c is a complex constant. The numbers ,..., are the pre-images of the polygon's vertices, or prevertices, which lie in order on the unit circle.
The Schwarz--Christoffel formula has been known since the 1860's but has had relatively little use until recently. First of all, the integral in the formula rarely has a closed form. Even more fundamentally, the prevertices are usually impossible to deduce analytically from the polygon. The locations of the prevertices affect the side lengths (but not the angles) of the image polygon in a highly nonlinear way. To find them in general, you must solve a nonlinear system of equations numerically. Toby Driscoll has written a MATLAB software package for numerical Schwarz-Christoffel mapping. This package was used to create the animations that follow.
The first animation illustrates the effect of the prevertices. The prevertices start in a random configuration, and the resulting image polygon is shown. Then the prevertices are moved (linearly in argument) into a configuration leading to a symmetric "X." Notice how the angles remain fixed, but the side lengths vary nonlinearly into the final configuration.
A variation on the first animation is to leave the prevertices fixed and vary the angles assigned to them. Here we "square" the ends of the X into right angles. The color of a (pre)vertex indicates its distance from being a right angle.
The last sequence shows the linear homotopy from the disk to the X. The color indicates the radius of a point's image in the disk. Notice how the arms of the X originate from points quite close to the boundary of the disk.
Visual Complex Analysis Plotting functions of a complex variable
Finally, for those interested in the technical details, or perhaps for making graphics of one's own, you can see how these graphics were made.
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 License.