December 14, 2007
: Dynamical System s Example Dynamical System In general, a dynamical system is a rule or function that describes a point s position in space over time, where time can be modeled as a continuum or a set of discrete points. Here we restrict our attention to discrete dynamical systems where time steps correspond to the integers. Essentially, it describes a process of iteration.
s Example Dynamical System : Complex Iteration Suppose f (z) is a complex valued function, then given an initial point say z 0, we can define a discrete dynamical system via complex iteration as follows: z 1 = f (z 0 ) z 2 = f (z 1 ) z 3 = f (z 2 ). z n = f (z n 1 )
s Example Dynamical System : Complex Iteration (continued) Alternatively, we could define the sequence of values as: z 1 = f (z 0 ) z 2 = f (f (z 0 )) z 3 = f (f (f (z 0 ))). z n = f n (z 0 )
s: Orbit, Bounded Orbit s Example Dynamical System The sequence of points z 0, z 1, z 2, z 3... is called the orbit of z 0 under f. The orbit of z 0 under f is bounded if there exists an M such that f n (z 0 ) M, n Z Otherwise the orbit is unbounded.
s Example Dynamical System Example Dynamical System Consider f (z) = z 2 : z 0 < 1, maps of z 0 under f will spiral in to the origin. z 0 > 1, maps of z 0 under f will spiral out to infinity. z 0 = 1, maps of z 0 will never leave the unit circle, but small neighborhoods around z 0 will eventually be mapped to the entire complex plane minus the origin.
s Example Dynamical System Example Dynamical System (continued) Suppose we take a small wedge shaped neighborhood W around a point on the unit circle. Next, iteratively apply f to W : 1 K1 0 1 2 K1 K2
: Supersensitivity s Example Dynamical System As illustrated in the previous slide, eventually the polar angle of f n (W ) exceeds 2π and the region becomes an annulus. Also, it is clear that no matter how large a radius R one chooses, we can always exceed it with a finite number of iterations. This leads us to our next definition. The orbit of z 0 under f is supersensitive if any open ball about z 0, B(z 0, ε) has the property that f n (B(z 0, ε)) n=0 is all of C, with the exception of at most one point.
Examples Algorithms s: Filled Julia Set and Julia Set The filled Julia set of f is the set of points whose orbits are bounded. The Julia set of f is the boundary of the filled Julia set. In general, the Julia set of a function is the boundary between the set of z 0 values which have bounded orbits and the set of z 0 values which do not, i.e. it is the set of supersensitive points under f.
Examples Algorithms Examples of The unit circle is the Julia set of f (z) = z 2. In fact for any c C the quadratic polynomial of the form: f c (z) = z 2 + c defines a Julia set.
Examples Algorithms More Examples of These Julia sets were generated from quadratic polynomials.
Examples Algorithms Simplistic Algorithm An algorithm to generate the filled Julia set of a quadratic form. Choose a maximum number of iterations, N. Take a grid of points in the complex plane. For each point z on the grid compute the first N iterations of f i c (z). If f i c (z) > max{ c, 2} for some i < N, then color z white. else if f i c (z) max { c, 2} i N, then color z black. The elements you color white are the points that escape to infinity, while those that get colored black approximate the points in the filled Julia set. The larger your N and the denser your grid the better the picture you will get.
Examples Algorithms Backward Iteration Algorithm Choose any point z C Compute at least 10,000 points on the backward orbit of z. (Using the inverse of f c (z)) For each backward iteration, choose at random one of the possibe pre images of f c i.e. either the positive or negative root of ± z c = (f c (z)) 1. Plot all but the first 100 iterations. This algorthim works because the Julia set is made up of points whose orbits are supersenitive. As such we know that no matter how small a B(z 0, ε) for z 0 in the Julia set we take, the image under fc n covers C. Thus, when we go backward along the orbit of z C we must eventually reach a point arbitrarily close to the Julia set. After that we will stay very near that set.
Algorithm Other Mandelbrot Sets The Mandelbrot set is the set of all c C such that the filled Julia set, K c of z 2 + c, is connected. Here is a picture of the set made in Maple.
Algorithm Other Mandelbrot Sets Aside on Computation You might be wondering how Maple can determine whether or not the Julia set corresponding to a given c value is connected or not. The fact is that Maple can not do this per se. It turns out that there is an alternative definition which gives rise to an algorithm that allows us to compute the Mandelbrot set. The alternative definition is dependent on the following important theorem.
Algorithm Other Mandelbrot Sets Theorem: The Fundamental Dichotomy Let f c (z) = z 2 + c then either: The orbit of the critical point z = 0 escapes to infinity, in which case K c (the filled Julia set of f c ) consists of infinitely many disjoint components, or The orbit of 0 remains bounded, in which case K c is connected. This theorem allows us to redefine the Mandelbrot set in such a way that we can calculate it with a computer.
Algorithm Other Mandelbrot Sets Redefined The Mandelbrot set can also be defined: M = {c C : f n c (0), as n } In words, we are looking for all the complex values c for which the orbit of z = 0 under f c is bounded. We can do this because the Fundamental Dichotomy tells us that if fc n (0) stays bounded, its Julia set is connected, therefore implying c M. We can use this fact to design a nice algorithm to compute the Mandelbrot set...
Algorithm Other Mandelbrot Sets Algorithm for the Mandelbrot Set This is esentially the same as the previous algorithm for the Julia set, but now we fix z = 0 and vary c over the grid. Choose a maximum number of iterations, N. Take a grid of points in the complex plane. For each point c on the grid, compute the first N iterations of f i c (0). If f i c (0) > max { c, 2} for some i N, then color z white. If f i c (0) max { c, 2} i N, then color z black.
Algorithm Other Mandelbrot Sets A Closer Look It is clear that if a c value belongs to the Mandelbrot set, then its filled Julia set K c is a connected set. If a c value is not in the Mandelbrot set, then K c will be totally disconnected. Next, we will illustrate the connection between Julia sets and the Mandelbrot set using a program called Xfractint freely available for both Windows and Linux.
Algorithm Other Mandelbrot Sets Other Mandelbrot Sets Multibrots One could ask the question: When are the Julia sets of c values connected for functions with powers higher then 2? The set pictured below is generated over the parameter space of z 3 + c. These sets are also called Mandelbrot sets or sometimes Multibrots.
Algorithm Other Mandelbrot Sets Other Mandelbrot Sets Multibrots (continued)
Algorithm Other Mandelbrot Sets Other Mandelbrot Sets Multibrots (continued)
Algorithm Other Mandelbrot Sets Other Mandelbrot Sets Multibrots (continued)
Algorithm Other Mandelbrot Sets Other Mandelbrot Sets Multibrots (continued)
Algorithm Other Mandelbrot Sets Other Mandelbrot Sets Multibrots (continued)
Algorithm Other Mandelbrot Sets References Maple code used to generate images http://www.math.utah.edu/~css/projects.html R. L. Devaney, A First Course in Chaotic Dynamical Systems Perseus Books, Cambridge Massachusetts, 1992. H. Peitgen, H. Jürgens, D. Saupe, Fractals for the Classroom Springer Verlag, 1992. J. E. Marsden, M. J. Hoffman, Basic Complex Analysis, 3rd ed. W. H. Freeman Co., New York, 1999. Wikipedia, Julia set Wikipedia, The Free Encyclopedia, 2007, http://en.wikipedia.org/w/index.php?title= Julia_set&oldid=164021909. Wikipedia, Mandelbrot set Wikipedia, The Free Encyclopedia, 2007, http://en.wikipedia.org/w/index. php?title=mandelbrot_set&oldid=175217766.